<?php
class AdminController extends PlatformController{
	function loginAction() {
		//这里显示登录表单
		include VIEW_PATH . 'login.html';
	}
	/**
	 * 生成登录需要的验证码
	 */
	public function CaptchaAction() {

		// 实例化验证码工具类
		$t_captcha = new Captcha();
		// 生成图片
		$t_captcha->makeImage();
	}
	function CheckAction(){
		// 检测验证码
		$t_captcha = new Captcha();
		if (!$t_captcha->checkCode($_POST['captcha'])) {
			// 没有验证通过
			$this->GotoUrl('index.php?p=admin&c=Admin&a=Login', '验证码错误', 2);
		}
		//这里验证表单登录信息
		$userName = $_POST['username'];
		$password = $_POST['password'];
		$obj = ModelFactory::GetModel('UserModel');
		// 模型的checkuserInfo在管理员合法时，返回管理员信息
		$admin_info = $obj->checkUserInfo($userName, $password);
		if( $admin_info ){	//验证成功，$admin_info是数组，则判断时自动转换为布尔型true
			//设置登录凭证,session
			// 存储当前管理员信息作为登录凭证
			$_SESSION['admin'] = $admin_info;
			// 记录登录状态
			// 是否需要记录
			if (isset($_POST['remember'])) {
				// 需要记录，ID和密码，加密过的
				setcookie('id', md5($admin_info['id'].'SALT'), PHP_INT_MAX);
				setcookie('password', md5($admin_info['password'].'SALT'), PHP_INT_MAX);
			}

			//实际情况是，登录成功后，这里应该显示一个好看的后台视图界面
			$this->GotoUrl('index.php?p=admin&c=Manage&a=Index', '', 0);
		}
		else{
			$this->GotoUrl('?p=admin&c=Admin&a=login', '用户名或密码错误！请重新登录', 5);
		}
	}
}
